package com.lanswon.qzsmk.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.lanswon.qzsmk.model.CardNoGenerated;
import com.lanswon.qzsmk.vo.CardNoGeneratedVo;

public interface CardNoGeneratedMapper {
	
	/**新增**/
	void insert(CardNoGenerated cardNoGenerated);
	
	/**查询上一条数据**/
	CardNoGenerated queryLastRecord(String cardpCode);
	
	/**通过文件名前缀查询上一条数据**/
	CardNoGenerated queryLastRecordByFlieNamePrefix(String flieNamePrefix);
	
	/**查询某种卡产品的卡号段未使用完的卡号生成记录**/
	List<CardNoGenerated> queryAllRecordByCardpCode(String cardpCode);
	
	/**通过主键更新**/
	int updateByPrimaryKey(CardNoGenerated cardNoGenerated);
	
	/**根据条件查询所有卡号生成记录**/
	List<CardNoGeneratedVo> queryAllRecord(CardNoGeneratedVo CardNoGenerated);
	
	/**
	 * 通过起始段号查询卡号库记录
	 * @param startNo
	 * @param endNo
	 * @return
	 */
	List<CardNoGenerated> querySegementByStartAndEnd(@Param("startNo")String startNo,@Param("endNo")String endNo);
	
	/**
	 * 更新卡号库
	 * @param cardNoGeneratedToUpdate
	 */
	void batchUpdateAmount(@Param("cardNoGeneratedToUpdate")List<CardNoGenerated> cardNoGeneratedToUpdate);
}